<component-set>
    <components>
        <component>
            <role>npanday.executable.compiler.CompilerContext</role>
            <implementation>npanday.executable.impl.CompilerContextImpl</implementation>
            <requirements>
                <requirement>
                    <role>npanday.artifact.ArtifactContext</role>
                </requirement>
                <requirement>
                    <role>npanday.registry.RepositoryRegistry</role>
                </requirement>
            </requirements>
        </component>
        <component>
            <role>npanday.executable.ExecutableContext</role>
            <implementation>npanday.executable.impl.ExecutableContextImpl</implementation>
            <requirements>
                <requirement>
                    <role>npanday.registry.RepositoryRegistry</role>
                </requirement>
            </requirements>
        </component>
        <component>
            <role>npanday.executable.RepositoryExecutableContext</role>
            <implementation>npanday.executable.impl.RepositoryExecutableContextImpl</implementation>
            <requirements>
                <requirement>
                    <role>npanday.registry.RepositoryRegistry</role>
                </requirement>
            </requirements>            
        </component>
        <component>
            <role>npanday.executable.NetExecutableFactory</role>
            <implementation>npanday.executable.impl.NetExecutableFactoryImpl</implementation>
            <requirements>
                <requirement>
                    <role>npanday.vendor.StateMachineProcessor</role>
                </requirement>
                <requirement>
                    <role>npanday.registry.RepositoryRegistry</role>
                </requirement>
                    <requirement>
                    <role>npanday.vendor.VendorInfoRepository</role>
                </requirement>
                <requirement>
                    <role>npanday.executable.CapabilityMatcher</role>
                </requirement>
                <requirement>
                    <role>npanday.executable.RepositoryExecutableContext</role>
                </requirement>
                <requirement>
                    <role>npanday.executable.ExecutableContext</role>
                </requirement>
                <requirement>
                    <role>npanday.executable.compiler.CompilerContext</role>
                </requirement>
                <requirement>
                    <role>npanday.artifact.ArtifactContext</role>
                </requirement>
            </requirements>
        </component>        
        <component>
            <role>npanday.executable.CapabilityMatcher</role>
            <implementation>npanday.executable.impl.CapabilityMatcherImpl</implementation>
            <requirements>
                <requirement>
                    <role>npanday.registry.RepositoryRegistry</role>
                </requirement>
            </requirements>
        </component>
    </components>
</component-set>
